import axios from 'axios' // 导入axios
import store from '@/store'
import JSONBig from 'json-bigint' // 导入
// 创建axios实例对象
const $axios = axios.create({
  // baseURL: process.env.NODE_ENV === 'production' ? 'http://toutiao-app.itheima.net' : 'http://toutiao-app.itheima.net',
  // baseURL: process.env.VUE_APP_API_URL, // 读取环境变量获得不同环境下的接口前缀地址
  baseURL: 'http://toutiao-app.itheima.net/', // 读取环境变量获得不同环境下的接口前缀地址
  // baseURL: 'http://192.168.12.42:8000', // 读取环境变量获得不同环境下的接口前缀地址
  timeout: 5000,
  // transformResponse 表示对返回来的内容进行转化
  transformResponse: [function (data) {
    // try {
    //   return JSON.parse(data) // 默认
    // } catch (error) {
    //   return data
    // }
    try {
      return JSONBig.parse(data) // 默认
    } catch (error) {
      return data
    }
  }]
})

// 请求拦截器
$axios.interceptors.request.use(config => {
  // config 是本次请求的所有配置信息
  // 思路：只要登录了就都加上
  if (store.getters.token) {
    config.headers.Authorization = 'Bearer ' + store.getters.token
  }
  return config
}, error => {
  return Promise.reject(error)
})

// 暴露这个axios实例
export default $axios
